<h2>Why is this an issue?</h2>
<p>A <code>catch</code> clause that only rethrows the caught exception has the same effect as omitting the <code>catch</code> altogether and letting
it bubble up automatically.</p>
<pre>
public String readFile(File f) throws IOException {
  String content;
  try {
    content = readFromDisk(f);
  } catch (IOException e) {
    throw e;
  }
  return content;
}
</pre>
<p>Such clauses should either be removed or populated with the appropriate logic.</p>
<pre>
public String readFile(File f) throws IOException {
  return readFromDisk(f);
}
</pre>
<p>or</p>
<pre>
public String readFile(File f) throws IOException {
  String content;
  try {
    content = readFromDisk(f);
  } catch (IOException e) {
    logger.LogError(e);
    throw e;
  }
  return content;
}
</pre>
<p>In the case of try-with-resources, the try should remain even without a catch clause, to keep the resource management</p>
<pre>
String readFirstLine(FileReader fileReader) throws IOException {
  try (BufferedReader br = new BufferedReader(fileReader)) {
     return br.readLine();
  } catch (IOException e) { // Noncompliant
  throw e;
}
</pre>
<p>becomes</p>
<pre>
String readFirstLine(FileReader fileReader) throws IOException {
  try (BufferedReader br = new BufferedReader(fileReader)) {
     return br.readLine();
  }
}
</pre>

